home *** CD-ROM | disk | FTP | other *** search
- /* ANSI C code generated by SmallEiffel. */
- /*
- -- SmallEiffel -- Release (- 0.97) -- FRANCE
- -- Copyright (C), 1994 - Dominique COLNET and Suzanne COLLIN
- -- University Henri Poincare' - Nancy 1 - email colnet@loria.fr
- -- CRIN (Centre de Recherche en Informatique de Nancy)
- -- FRANCE
- */
- #include "compile_to_c.h"
- int rT161static_value(T161 *C){
- int R=0;
- R=(C)->_static_value_mem;
- return R;
- }
- void rT161to_runnable_0(T161 *C,T0 * a1){
- T0 * _rc=NULL;
- T0 * _t=NULL;
- C->_current_type=a1;
- _t=XrT68to_runnable((C)->_target,a1);
- /*IF*/if (!(_t)) {
- rT161error(XrT68start_position((C)->_target),(T0 *)ms1119);
- }
- else {
- C->_target=_t;
- _rc=XrT58run_class(XrT68result_type((C)->_target));
- C->_run_feature=rT260get_rf((T260*)_rc,(C)->_target,(C)->_feature_name);
- C->_result_type=XrT261result_type((C)->_run_feature);
- /*IF*/if (!((C)->_result_type)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT261start_position((C)->_run_feature));
- rT161error(((T66*)(C)->_feature_name)->_start_position,(T0 *)ms1131);
- }
- /*FI*/}
- /*FI*/}
- T0 * rT161to_runnable(T161 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if (!((C)->_current_type)) {
- rT161to_runnable_0(C,a1);
- /*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0))&&((XrT261arg_count((C)->_run_feature))>(0))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(((T66*)(C)->_feature_name)->_start_position);
- rT161error(XrT261start_position((C)->_run_feature),(T0 *)ms1132);
- }
- /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
- R=(T0 *)C;
- }
- /*FI*/}
- else {
- R=rT161clone(C,(T0 *)C);
- /*(IRF3*/(((T161*)R)->_current_type)=(NULL);
- /*)*/R=rT161to_runnable((T161*)R,a1);
- }
- /*FI*/return R;
- }
- void rT161error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT161add_comment(T161 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T220 *n=((T220*)new(220));
- rT220make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- T0 * rT161start_position(T161 *C){
- T0 * R=NULL;
- R=((T66*)(C)->_feature_name)->_start_position;
- return R;
- }
- int rT161use_current(T161 *C){
- int R=0;
- /*IF*//*AF*//*AE*/
- /*FI*//*IF*/if (R) {
- }
- else if (XrT68is_current((C)->_target)) {
- R=XrT261use_current((C)->_run_feature);
- }
- else {
- R=XrT68use_current((C)->_target);
- }
- /*FI*/return R;
- }
- T0* rT161clone(T161 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- int rT161can_be_dropped(T161 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261can_be_dropped((C)->_run_feature);
- }
- /*FI*/return R;
- }
- void rT161compile_to_c_old(T161 *C){
- XrT68compile_to_c_old((C)->_target);
- /*IF*//*AF*//*AE*/
- /*FI*/}
- void rT161compile_to_c(T161 *C){
- T0* _n=NULL;
- T0 * _dyn_rf=NULL;
- T0 * _tt=NULL;
- T0* _r=NULL;
- _tt=XrT58run_type(XrT68result_type((C)->_target));
- _n=XrT67to_string(XrT261name((C)->_run_feature));
- /*IF*/if (rT7is_equal((T7*)(T0 *)ms1109,_n)) {
- rT40put_is_expanded_type((T40*)oRBC27cpp,_tt);
- }
- else if (((XrT58is_expanded(_tt))||(XrT68is_current((C)->_target)))||(XrT68is_manifest_string((C)->_target))) {
- rT40push_direct((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- _r=((T260*)XrT58run_class(_tt))->_running;
- /*IF*/if (!(_r)) {
- rT40push_void((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else if ((rT263count((T263*)_r))==(1)) {
- _dyn_rf=rT161dynamic(rT263first((T263*)_r),(C)->_run_feature);
- rT40push_check((T40*)oRBC27cpp,_dyn_rf,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c(_dyn_rf);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- rT40use_switch((T40*)oRBC27cpp,(C)->_run_feature,_r,(C)->_target,/*(IRF4*/NULL/*)*/);
- }
- /*FI*/}
- /*FI*/}
- int rT161to_integer(T161 *C){
- int R=0;
- T0 * _rf1=NULL;
- _rf1=(C)->_run_feature;
- if ((int)_rf1) switch (((T0 *)_rf1)->id) {
- case 277:
- break;
- default:
- _rf1 = NULL;
- };/*IF*/if (!(_rf1)) {
- rT161error(rT161start_position(C),(T0 *)ms175);
- }
- else {
- R=XrT68to_integer(((T277*)_rf1)->_value);
- }
- /*FI*/return R;
- }
- T0 * rT161dynamic(/*C*/T0 * a1,T0 * a2){
- T0 * R=NULL;
- T0 * _static=NULL;
- T0 * _sta_name=NULL;
- T0 * _dyn_name=NULL;
- _static=XrT261current_type(a2);
- _sta_name=XrT261name(a2);
- _dyn_name=rT50name_of((T50*)rT260base_class((T260*)a1),XrT58base_class(_static),_sta_name);
- R=rT260get_feature((T260*)a1,_dyn_name);
- return R;
- }
- T0 * rT161written_in(T161 *C){
- T0 * R=NULL;
- T0 * _sp=NULL;
- _sp=rT161start_position(C);
- /*IF*/if (((int)_sp)) {
- R=((T46*)_sp)->_base_class_name;
- }
- /*FI*/return R;
- }
- int rT161call_is_static(T161 *C){
- int R=0;
- T0 * _rc=NULL;
- /*IF*/if (((int)(C)->_run_feature)) {
- _rc=XrT261run_class((C)->_run_feature);
- /*IF*/if ((rT263count((T263*)((T260*)_rc)->_running))==(1)) {
- /*IF*/if (XrT261is_static((C)->_run_feature)) {
- C->_static_value_mem=XrT261static_value_mem((C)->_run_feature);
- R=1;
- }
- /*FI*/}
- /*FI*/}
- /*FI*/return R;
- }
- void rT161copy(T161 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT161is_a(T161 *C,T0 * a1){
- int R=0;
- R=XrT58is_a(XrT58run_type((C)->_result_type),XrT58run_type(XrT68result_type(a1)));
- /*IF*/if (!(R)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT161start_position(C));
- rT161error(XrT68start_position(a1),(T0 *)ms1261);
- }
- /*FI*/return R;
- }
- int rT161is_pre_computable(T161 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261is_pre_computable((C)->_run_feature);
- }
- /*FI*/return R;
- }
- void rT161make_call0(T161 *C,T0 * a1,T0 * a2){
- C->_target=a1;
- C->_feature_name=a2;
- }
- void rT161make(T161 *C,T0 * a1,T0 * a2){
- {T66 *n=((T66*)new(66));
- rT66make(n,/*(IRF4*/(T0 *)ms84/*)*/,a1);
- C->_feature_name=(T0 *)n;}
- rT161make_call0(C,a2,(C)->_feature_name);
- }
- int rT165is_static(T165 *C){
- int R=0;
- /*IF*/if (XrT58is_integer(XrT68result_type((C)->_target))) {
- /*IF*/if (XrT68is_static((C)->_target)) {
- R=1;
- C->_static_value_mem=XrT68static_value((C)->_target);
- }
- /*FI*/}
- /*FI*/return R;
- }
- int rT165static_value(T165 *C){
- int R=0;
- R=(C)->_static_value_mem;
- return R;
- }
- void rT165to_runnable_0(T165 *C,T0 * a1){
- T0 * _rc=NULL;
- T0 * _t=NULL;
- C->_current_type=a1;
- _t=XrT68to_runnable((C)->_target,a1);
- /*IF*/if (!(_t)) {
- rT165error(XrT68start_position((C)->_target),(T0 *)ms1119);
- }
- else {
- C->_target=_t;
- _rc=XrT58run_class(XrT68result_type((C)->_target));
- C->_run_feature=rT260get_rf((T260*)_rc,(C)->_target,(C)->_feature_name);
- C->_result_type=XrT261result_type((C)->_run_feature);
- /*IF*/if (!((C)->_result_type)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT261start_position((C)->_run_feature));
- rT165error(((T66*)(C)->_feature_name)->_start_position,(T0 *)ms1131);
- }
- /*FI*/}
- /*FI*/}
- T0 * rT165to_runnable(T165 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if (!((C)->_current_type)) {
- rT165to_runnable_0(C,a1);
- /*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0))&&((XrT261arg_count((C)->_run_feature))>(0))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(((T66*)(C)->_feature_name)->_start_position);
- rT165error(XrT261start_position((C)->_run_feature),(T0 *)ms1132);
- }
- /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
- R=(T0 *)C;
- }
- /*FI*/}
- else {
- R=rT165clone(C,(T0 *)C);
- /*(IRF3*/(((T165*)R)->_current_type)=(NULL);
- /*)*/R=rT165to_runnable((T165*)R,a1);
- }
- /*FI*/return R;
- }
- void rT165error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT165add_comment(T165 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T220 *n=((T220*)new(220));
- rT220make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- T0 * rT165start_position(T165 *C){
- T0 * R=NULL;
- R=((T66*)(C)->_feature_name)->_start_position;
- return R;
- }
- int rT165use_current(T165 *C){
- int R=0;
- /*IF*//*AF*//*AE*/
- /*FI*//*IF*/if (R) {
- }
- else if (XrT68is_current((C)->_target)) {
- R=XrT261use_current((C)->_run_feature);
- }
- else {
- R=XrT68use_current((C)->_target);
- }
- /*FI*/return R;
- }
- T0* rT165clone(T165 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- int rT165can_be_dropped(T165 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261can_be_dropped((C)->_run_feature);
- }
- /*FI*/return R;
- }
- void rT165compile_to_c_old(T165 *C){
- XrT68compile_to_c_old((C)->_target);
- /*IF*//*AF*//*AE*/
- /*FI*/}
- void rT165compile_to_c(T165 *C){
- T0* _n=NULL;
- T0 * _dyn_rf=NULL;
- T0 * _tt=NULL;
- T0* _r=NULL;
- _tt=XrT58run_type(XrT68result_type((C)->_target));
- _n=XrT67to_string(XrT261name((C)->_run_feature));
- /*IF*/if (rT7is_equal((T7*)(T0 *)ms1109,_n)) {
- rT40put_is_expanded_type((T40*)oRBC27cpp,_tt);
- }
- else if (((XrT58is_expanded(_tt))||(XrT68is_current((C)->_target)))||(XrT68is_manifest_string((C)->_target))) {
- rT40push_direct((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- _r=((T260*)XrT58run_class(_tt))->_running;
- /*IF*/if (!(_r)) {
- rT40push_void((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else if ((rT263count((T263*)_r))==(1)) {
- _dyn_rf=rT165dynamic(rT263first((T263*)_r),(C)->_run_feature);
- rT40push_check((T40*)oRBC27cpp,_dyn_rf,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c(_dyn_rf);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- rT40use_switch((T40*)oRBC27cpp,(C)->_run_feature,_r,(C)->_target,/*(IRF4*/NULL/*)*/);
- }
- /*FI*/}
- /*FI*/}
- int rT165to_integer(T165 *C){
- int R=0;
- T0 * _rf1=NULL;
- _rf1=(C)->_run_feature;
- if ((int)_rf1) switch (((T0 *)_rf1)->id) {
- case 277:
- break;
- default:
- _rf1 = NULL;
- };/*IF*/if (!(_rf1)) {
- rT165error(rT165start_position(C),(T0 *)ms175);
- }
- else {
- R=XrT68to_integer(((T277*)_rf1)->_value);
- }
- /*FI*/return R;
- }
- T0 * rT165dynamic(/*C*/T0 * a1,T0 * a2){
- T0 * R=NULL;
- T0 * _static=NULL;
- T0 * _sta_name=NULL;
- T0 * _dyn_name=NULL;
- _static=XrT261current_type(a2);
- _sta_name=XrT261name(a2);
- _dyn_name=rT50name_of((T50*)rT260base_class((T260*)a1),XrT58base_class(_static),_sta_name);
- R=rT260get_feature((T260*)a1,_dyn_name);
- return R;
- }
- T0 * rT165written_in(T165 *C){
- T0 * R=NULL;
- T0 * _sp=NULL;
- _sp=rT165start_position(C);
- /*IF*/if (((int)_sp)) {
- R=((T46*)_sp)->_base_class_name;
- }
- /*FI*/return R;
- }
- int rT165call_is_static(T165 *C){
- int R=0;
- T0 * _rc=NULL;
- /*IF*/if (((int)(C)->_run_feature)) {
- _rc=XrT261run_class((C)->_run_feature);
- /*IF*/if ((rT263count((T263*)((T260*)_rc)->_running))==(1)) {
- /*IF*/if (XrT261is_static((C)->_run_feature)) {
- C->_static_value_mem=XrT261static_value_mem((C)->_run_feature);
- R=1;
- }
- /*FI*/}
- /*FI*/}
- /*FI*/return R;
- }
- void rT165copy(T165 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT165is_a(T165 *C,T0 * a1){
- int R=0;
- R=XrT58is_a(XrT58run_type((C)->_result_type),XrT58run_type(XrT68result_type(a1)));
- /*IF*/if (!(R)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT165start_position(C));
- rT165error(XrT68start_position(a1),(T0 *)ms1261);
- }
- /*FI*/return R;
- }
- int rT165is_pre_computable(T165 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261is_pre_computable((C)->_run_feature);
- }
- /*FI*/return R;
- }
- void rT165make_call0(T165 *C,T0 * a1,T0 * a2){
- C->_target=a1;
- C->_feature_name=a2;
- }
- void rT165make(T165 *C,T0 * a1,T0 * a2){
- {T66 *n=((T66*)new(66));
- rT66make(n,/*(IRF4*/(T0 *)ms86/*)*/,a1);
- C->_feature_name=(T0 *)n;}
- rT165make_call0(C,a2,(C)->_feature_name);
- }
- int rT166is_static(T166 *C){
- int R=0;
- /*IF*/if (XrT58is_integer(XrT68result_type((C)->_target))) {
- /*IF*/if (XrT68is_static((C)->_target)) {
- R=1;
- C->_static_value_mem=-(XrT68static_value((C)->_target));
- }
- /*FI*/}
- /*FI*/return R;
- }
- int rT166static_value(T166 *C){
- int R=0;
- R=(C)->_static_value_mem;
- return R;
- }
- void rT166to_runnable_0(T166 *C,T0 * a1){
- T0 * _rc=NULL;
- T0 * _t=NULL;
- C->_current_type=a1;
- _t=XrT68to_runnable((C)->_target,a1);
- /*IF*/if (!(_t)) {
- rT166error(XrT68start_position((C)->_target),(T0 *)ms1119);
- }
- else {
- C->_target=_t;
- _rc=XrT58run_class(XrT68result_type((C)->_target));
- C->_run_feature=rT260get_rf((T260*)_rc,(C)->_target,(C)->_feature_name);
- C->_result_type=XrT261result_type((C)->_run_feature);
- /*IF*/if (!((C)->_result_type)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT261start_position((C)->_run_feature));
- rT166error(((T66*)(C)->_feature_name)->_start_position,(T0 *)ms1131);
- }
- /*FI*/}
- /*FI*/}
- T0 * rT166to_runnable(T166 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if (!((C)->_current_type)) {
- rT166to_runnable_0(C,a1);
- /*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0))&&((XrT261arg_count((C)->_run_feature))>(0))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(((T66*)(C)->_feature_name)->_start_position);
- rT166error(XrT261start_position((C)->_run_feature),(T0 *)ms1132);
- }
- /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
- R=(T0 *)C;
- }
- /*FI*/}
- else {
- R=rT166clone(C,(T0 *)C);
- /*(IRF3*/(((T166*)R)->_current_type)=(NULL);
- /*)*/R=rT166to_runnable((T166*)R,a1);
- }
- /*FI*/return R;
- }
- void rT166error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT166add_comment(T166 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T220 *n=((T220*)new(220));
- rT220make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- T0 * rT166start_position(T166 *C){
- T0 * R=NULL;
- R=((T66*)(C)->_feature_name)->_start_position;
- return R;
- }
- int rT166use_current(T166 *C){
- int R=0;
- /*IF*//*AF*//*AE*/
- /*FI*//*IF*/if (R) {
- }
- else if (XrT68is_current((C)->_target)) {
- R=XrT261use_current((C)->_run_feature);
- }
- else {
- R=XrT68use_current((C)->_target);
- }
- /*FI*/return R;
- }
- T0* rT166clone(T166 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- int rT166can_be_dropped(T166 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261can_be_dropped((C)->_run_feature);
- }
- /*FI*/return R;
- }
- void rT166compile_to_c_old(T166 *C){
- XrT68compile_to_c_old((C)->_target);
- /*IF*//*AF*//*AE*/
- /*FI*/}
- void rT166compile_to_c(T166 *C){
- T0* _n=NULL;
- T0 * _dyn_rf=NULL;
- T0 * _tt=NULL;
- T0* _r=NULL;
- _tt=XrT58run_type(XrT68result_type((C)->_target));
- _n=XrT67to_string(XrT261name((C)->_run_feature));
- /*IF*/if (rT7is_equal((T7*)(T0 *)ms1109,_n)) {
- rT40put_is_expanded_type((T40*)oRBC27cpp,_tt);
- }
- else if (((XrT58is_expanded(_tt))||(XrT68is_current((C)->_target)))||(XrT68is_manifest_string((C)->_target))) {
- rT40push_direct((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- _r=((T260*)XrT58run_class(_tt))->_running;
- /*IF*/if (!(_r)) {
- rT40push_void((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else if ((rT263count((T263*)_r))==(1)) {
- _dyn_rf=rT166dynamic(rT263first((T263*)_r),(C)->_run_feature);
- rT40push_check((T40*)oRBC27cpp,_dyn_rf,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c(_dyn_rf);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- rT40use_switch((T40*)oRBC27cpp,(C)->_run_feature,_r,(C)->_target,/*(IRF4*/NULL/*)*/);
- }
- /*FI*/}
- /*FI*/}
- int rT166to_integer(T166 *C){
- int R=0;
- T0 * _rf1=NULL;
- _rf1=(C)->_run_feature;
- if ((int)_rf1) switch (((T0 *)_rf1)->id) {
- case 277:
- break;
- default:
- _rf1 = NULL;
- };/*IF*/if (!(_rf1)) {
- rT166error(rT166start_position(C),(T0 *)ms175);
- }
- else {
- R=XrT68to_integer(((T277*)_rf1)->_value);
- }
- /*FI*/return R;
- }
- T0 * rT166dynamic(/*C*/T0 * a1,T0 * a2){
- T0 * R=NULL;
- T0 * _static=NULL;
- T0 * _sta_name=NULL;
- T0 * _dyn_name=NULL;
- _static=XrT261current_type(a2);
- _sta_name=XrT261name(a2);
- _dyn_name=rT50name_of((T50*)rT260base_class((T260*)a1),XrT58base_class(_static),_sta_name);
- R=rT260get_feature((T260*)a1,_dyn_name);
- return R;
- }
- T0 * rT166written_in(T166 *C){
- T0 * R=NULL;
- T0 * _sp=NULL;
- _sp=rT166start_position(C);
- /*IF*/if (((int)_sp)) {
- R=((T46*)_sp)->_base_class_name;
- }
- /*FI*/return R;
- }
- int rT166call_is_static(T166 *C){
- int R=0;
- T0 * _rc=NULL;
- /*IF*/if (((int)(C)->_run_feature)) {
- _rc=XrT261run_class((C)->_run_feature);
- /*IF*/if ((rT263count((T263*)((T260*)_rc)->_running))==(1)) {
- /*IF*/if (XrT261is_static((C)->_run_feature)) {
- C->_static_value_mem=XrT261static_value_mem((C)->_run_feature);
- R=1;
- }
- /*FI*/}
- /*FI*/}
- /*FI*/return R;
- }
- void rT166copy(T166 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT166is_a(T166 *C,T0 * a1){
- int R=0;
- R=XrT58is_a(XrT58run_type((C)->_result_type),XrT58run_type(XrT68result_type(a1)));
- /*IF*/if (!(R)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT166start_position(C));
- rT166error(XrT68start_position(a1),(T0 *)ms1261);
- }
- /*FI*/return R;
- }
- int rT166is_pre_computable(T166 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261is_pre_computable((C)->_run_feature);
- }
- /*FI*/return R;
- }
- void rT166make_call0(T166 *C,T0 * a1,T0 * a2){
- C->_target=a1;
- C->_feature_name=a2;
- }
- void rT166make(T166 *C,T0 * a1,T0 * a2){
- {T66 *n=((T66*)new(66));
- rT66make(n,/*(IRF4*/(T0 *)ms87/*)*/,a1);
- C->_feature_name=(T0 *)n;}
- rT166make_call0(C,a2,(C)->_feature_name);
- }
- int rT167is_static(T167 *C){
- int R=0;
- R=rT167call_is_static(C);
- return R;
- }
- int rT167static_value(T167 *C){
- int R=0;
- R=(C)->_static_value_mem;
- return R;
- }
- void rT167to_runnable_0(T167 *C,T0 * a1){
- T0 * _rc=NULL;
- T0 * _t=NULL;
- C->_current_type=a1;
- _t=XrT68to_runnable((C)->_target,a1);
- /*IF*/if (!(_t)) {
- rT167error(XrT68start_position((C)->_target),(T0 *)ms1119);
- }
- else {
- C->_target=_t;
- _rc=XrT58run_class(XrT68result_type((C)->_target));
- C->_run_feature=rT260get_rf((T260*)_rc,(C)->_target,(C)->_feature_name);
- C->_result_type=XrT261result_type((C)->_run_feature);
- /*IF*/if (!((C)->_result_type)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT261start_position((C)->_run_feature));
- rT167error(((T66*)(C)->_feature_name)->_start_position,(T0 *)ms1131);
- }
- /*FI*/}
- /*FI*/}
- T0 * rT167to_runnable(T167 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if (!((C)->_current_type)) {
- rT167to_runnable_0(C,a1);
- /*IF*/if (((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0))&&((XrT261arg_count((C)->_run_feature))>(0))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(((T66*)(C)->_feature_name)->_start_position);
- rT167error(XrT261start_position((C)->_run_feature),(T0 *)ms1132);
- }
- /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
- R=(T0 *)C;
- }
- /*FI*/}
- else {
- R=rT167clone(C,(T0 *)C);
- /*(IRF3*/(((T167*)R)->_current_type)=(NULL);
- /*)*/R=rT167to_runnable((T167*)R,a1);
- }
- /*FI*/return R;
- }
- void rT167error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT167add_comment(T167 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T220 *n=((T220*)new(220));
- rT220make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- T0 * rT167start_position(T167 *C){
- T0 * R=NULL;
- R=((T66*)(C)->_feature_name)->_start_position;
- return R;
- }
- int rT167use_current(T167 *C){
- int R=0;
- /*IF*//*AF*//*AE*/
- /*FI*//*IF*/if (R) {
- }
- else if (XrT68is_current((C)->_target)) {
- R=XrT261use_current((C)->_run_feature);
- }
- else {
- R=XrT68use_current((C)->_target);
- }
- /*FI*/return R;
- }
- T0* rT167clone(T167 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- int rT167can_be_dropped(T167 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261can_be_dropped((C)->_run_feature);
- }
- /*FI*/return R;
- }
- T0* rT167operator(T167 *C){
- T0* R=NULL;
- R=((T66*)(C)->_feature_name)->_to_string;
- return R;
- }
- void rT167compile_to_c_old(T167 *C){
- XrT68compile_to_c_old((C)->_target);
- /*IF*//*AF*//*AE*/
- /*FI*/}
- void rT167compile_to_c(T167 *C){
- T0* _n=NULL;
- T0 * _dyn_rf=NULL;
- T0 * _tt=NULL;
- T0* _r=NULL;
- _tt=XrT58run_type(XrT68result_type((C)->_target));
- _n=XrT67to_string(XrT261name((C)->_run_feature));
- /*IF*/if (rT7is_equal((T7*)(T0 *)ms1109,_n)) {
- rT40put_is_expanded_type((T40*)oRBC27cpp,_tt);
- }
- else if (((XrT58is_expanded(_tt))||(XrT68is_current((C)->_target)))||(XrT68is_manifest_string((C)->_target))) {
- rT40push_direct((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- _r=((T260*)XrT58run_class(_tt))->_running;
- /*IF*/if (!(_r)) {
- rT40push_void((T40*)oRBC27cpp,(C)->_run_feature,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c((C)->_run_feature);
- rT40pop((T40*)oRBC27cpp);
- }
- else if ((rT263count((T263*)_r))==(1)) {
- _dyn_rf=rT167dynamic(rT263first((T263*)_r),(C)->_run_feature);
- rT40push_check((T40*)oRBC27cpp,_dyn_rf,(C)->_target,/*(IRF4*/NULL/*)*/);
- XrT261mapping_c(_dyn_rf);
- rT40pop((T40*)oRBC27cpp);
- }
- else {
- rT40use_switch((T40*)oRBC27cpp,(C)->_run_feature,_r,(C)->_target,/*(IRF4*/NULL/*)*/);
- }
- /*FI*/}
- /*FI*/}
- int rT167to_integer(T167 *C){
- int R=0;
- T0 * _rf1=NULL;
- _rf1=(C)->_run_feature;
- if ((int)_rf1) switch (((T0 *)_rf1)->id) {
- case 277:
- break;
- default:
- _rf1 = NULL;
- };/*IF*/if (!(_rf1)) {
- rT167error(rT167start_position(C),(T0 *)ms175);
- }
- else {
- R=XrT68to_integer(((T277*)_rf1)->_value);
- }
- /*FI*/return R;
- }
- T0 * rT167dynamic(/*C*/T0 * a1,T0 * a2){
- T0 * R=NULL;
- T0 * _static=NULL;
- T0 * _sta_name=NULL;
- T0 * _dyn_name=NULL;
- _static=XrT261current_type(a2);
- _sta_name=XrT261name(a2);
- _dyn_name=rT50name_of((T50*)rT260base_class((T260*)a1),XrT58base_class(_static),_sta_name);
- R=rT260get_feature((T260*)a1,_dyn_name);
- return R;
- }
- T0 * rT167written_in(T167 *C){
- T0 * R=NULL;
- T0 * _sp=NULL;
- _sp=rT167start_position(C);
- /*IF*/if (((int)_sp)) {
- R=((T46*)_sp)->_base_class_name;
- }
- /*FI*/return R;
- }
- void rT167copy(T167 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT167call_is_static(T167 *C){
- int R=0;
- T0 * _rc=NULL;
- /*IF*/if (((int)(C)->_run_feature)) {
- _rc=XrT261run_class((C)->_run_feature);
- /*IF*/if ((rT263count((T263*)((T260*)_rc)->_running))==(1)) {
- /*IF*/if (XrT261is_static((C)->_run_feature)) {
- C->_static_value_mem=XrT261static_value_mem((C)->_run_feature);
- R=1;
- }
- /*FI*/}
- /*FI*/}
- /*FI*/return R;
- }
- int rT167is_a(T167 *C,T0 * a1){
- int R=0;
- R=XrT58is_a(XrT58run_type((C)->_result_type),XrT58run_type(XrT68result_type(a1)));
- /*IF*/if (!(R)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(rT167start_position(C));
- rT167error(XrT68start_position(a1),(T0 *)ms1261);
- }
- /*FI*/return R;
- }
- int rT167is_pre_computable(T167 *C){
- int R=0;
- /*IF*/if (XrT68is_current((C)->_target)) {
- R=XrT261is_pre_computable((C)->_run_feature);
- }
- /*FI*/return R;
- }
- void rT167make_prefix(T167 *C,T0 * a1,T0 * a2){
- {T66 *n=((T66*)new(66));
- rT66make(n,rT167operator(C),a1);
- C->_feature_name=(T0 *)n;}
- rT167make_call0(C,a2,(C)->_feature_name);
- }
- void rT167make_call0(T167 *C,T0 * a1,T0 * a2){
- C->_target=a1;
- C->_feature_name=a2;
- }
- void rT167make(T167 *C,T0 * a1,T0 * a2){
- rT167make_call0(C,a1,a2);
- }
- int rT88static_value(T88 *C){
- int R=0;
- R=(C)->_static_value_mem;
- return R;
- }
- T0 * rT88to_runnable(T88 *C,T0 * a1){
- T0 * R=NULL;
- T0 * _rf=NULL;
- /*IF*/if (!((C)->_current_type)) {
- C->_current_type=a1;
- _rf=rT52top_rf((T52*)oRBC27small_eiffel);
- C->_result_type=rT92type((T92*)XrT261arguments(_rf),(C)->_rank);
- R=(T0 *)C;
- /*IF*/if (rT50has_feature((T50*)rT88base_class_written(C),(C)->_to_string)) {
- _rf=rT260get_feature_with((T260*)XrT58run_class(a1),(C)->_to_string);
- /*IF*/if (((int)_rf)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT261start_position(_rf));
- }
- /*FI*/rT88error((C)->_start_position,(T0 *)ms1116);
- }
- /*FI*/}
- else {
- R=rT88clone(C,(T0 *)C);
- /*(IRF3*/(((T88*)R)->_current_type)=(NULL);
- /*)*/R=rT88to_runnable((T88*)R,a1);
- }
- /*FI*/return R;
- }
- void rT88error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT88add_comment(T88 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T220 *n=((T220*)new(220));
- rT220make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- T0* rT88clone(T88 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- T0* rT88to_key(T88 *C){
- T0* R=NULL;
- R=(C)->_to_string;
- return R;
- }
- void rT88compile_to_c(T88 *C){
- rT40put_character((T40*)oRBC27cpp,'a');
- rT40put_integer((T40*)oRBC27cpp,(C)->_rank);
- }
- int rT88to_integer(T88 *C){
- int R=0;
- rT88error((C)->_start_position,(T0 *)ms175);
- return R;
- }
- T0 * rT88written_in(T88 *C){
- T0 * R=NULL;
- T0 * _sp=NULL;
- _sp=(C)->_start_position;
- /*IF*/if (((int)_sp)) {
- R=((T46*)_sp)->_base_class_name;
- }
- /*FI*/return R;
- }
- T0 * rT88base_class_written(T88 *C){
- T0 * R=NULL;
- R=rT48base_class((T48*)rT88written_in(C));
- return R;
- }
- void rT88copy(T88 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT88is_a(T88 *C,T0 * a1){
- int R=0;
- R=XrT58is_a(XrT58run_type((C)->_result_type),XrT58run_type(XrT68result_type(a1)));
- /*IF*/if (!(R)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position((C)->_start_position);
- rT88error(XrT68start_position(a1),(T0 *)ms1261);
- }
- /*FI*/return R;
- }
- void rT88make(T88 *C,T0 * a1,T0* a2,int a3){
- C->_start_position=a1;
- C->_to_string=a2;
- C->_rank=a3;
- }
- int rT70same_as(T70 *C,T0 * a1){
- int R=0;
- R=rT7is_equal((T7*)rT70to_key(C),XrT49to_key(a1));
- return R;
- }
- int rT70static_value(T70 *C){
- int R=0;
- R=(C)->_static_value_mem;
- return R;
- }
- void rT70fatal_error(/*C*/T0* a1){
- rT45fatal_error((T45*)oRBC27eh,a1);
- }
- T0 * rT70to_runnable(T70 *C,T0 * a1){
- T0 * R=NULL;
- T0 * _rf=NULL;
- /*IF*/if (!((C)->_current_type)) {
- C->_current_type=a1;
- _rf=rT260get_feature((T260*)XrT58run_class((C)->_current_type),(T0 *)C);
- /*IF*/if (!(_rf)) {
- rT70error((C)->_start_position,(T0 *)ms1110);
- }
- else if (XrT261is_writable(_rf)) {
- C->_result_type=XrT261result_type(_rf);
- }
- else {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT261start_position(_rf));
- rT70error((C)->_start_position,(T0 *)ms1111);
- }
- /*FI*//*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)==(0)) {
- R=(T0 *)C;
- }
- else {
- rT70error((C)->_start_position,(T0 *)ms1112);
- }
- /*FI*/}
- else if (((T0 *)a1)==((T0 *)(C)->_current_type)) {
- R=(T0 *)C;
- }
- else if (rT7is_equal((T7*)XrT58run_time_mark(a1),XrT58run_time_mark((C)->_current_type))) {
- rT70error((C)->_start_position,(T0 *)ms1113);
- /*UT*/(T45*)oRBC27eh;
- rT45add_type(a1,(T0 *)ms1114);
- /*UT*/(T45*)oRBC27eh;
- rT45add_type((C)->_current_type,(T0 *)ms1115);
- rT45print_as_error((T45*)oRBC27eh);
- }
- else {
- {T70 *n=((T70*)new(70));
- rT70make(n,(C)->_to_string,(C)->_start_position);
- R=(T0 *)n;}
- R=rT70to_runnable((T70*)R,a1);
- }
- /*FI*/return R;
- }
- void rT70error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT70add_comment(T70 *C,T0 * a1){
- T0 * R=NULL;
- /*IF*/if ((!(a1))||((rT59count((T59*)a1))==(0))) {
- R=(T0 *)C;
- }
- else {
- {T220 *n=((T220*)new(220));
- rT220make(n,(T0 *)C,a1);
- R=(T0 *)n;}}
- /*FI*/return R;
- }
- int rT70is_equal(T70 *C,T0 * a1){
- int R=0;
- R=rT70standard_is_equal(C,a1);
- return R;
- }
- T0* rT70to_key(T70 *C){
- T0* R=NULL;
- R=(C)->_to_string;
- return R;
- }
- int rT70can_be_dropped(T70 *C){
- int R=0;
- /*UT*/(T45*)oRBC27eh;
- rT45add_position((C)->_start_position);
- rT70fatal_error((T0 *)ms1520);
- return R;
- }
- void rT70mapping_c(T70 *C){
- /*(IRF3*/(((T7*)oRBC67mapping_c_mem)->_count)=(0);
- /*)*/rT70mapping_c_in(C,oRBC67mapping_c_mem);
- rT40put_string((T40*)oRBC27cpp,oRBC67mapping_c_mem);
- }
- void rT70mapping_c_in(T70 *C,T0* a1){
- /*IF*/{/*AT*//*IF*/if (rT7is_equal((T7*)(T0 *)ms102,(C)->_to_string)) {
- rT7append((T7*)a1,(C)->_to_string);
- }
- else {
- rT7append((T7*)a1,(T0 *)ms798);
- rT70mapping_c_aux(C,a1);
- }
- /*FI*/}
- /*FI*/}
- void rT70mapping_c_aux(T70 *C,T0* a1){
- int _i=0;
- _i=1;
- while (!((_i)>(((T7*)(C)->_to_string)->_count))) {
- rT2append_in(((unsigned char)rT7item((T7*)(C)->_to_string,_i)),a1);
- _i=(_i)+(1);
- }
- }
- void rT70compile_to_c(T70 *C){
- rT40put_string((T40*)oRBC27cpp,(T0 *)ms1156);
- rT40put_string((T40*)oRBC27cpp,(C)->_to_string);
- }
- int rT70to_integer(T70 *C){
- int R=0;
- rT70error((C)->_start_position,(T0 *)ms175);
- return R;
- }
- T0* rT70to_err_msg2(T70 *C){
- T0* R=NULL;
- R=rT70to_err2(C);
- return R;
- }
- T0* rT70to_err1(T70 *C){
- T0* R=NULL;
- {T7 *n=((T7*)new(7));
- rT7copy(n,(C)->_to_string);
- R=(T0 *)n;}
- rT7precede((T7*)R,'\140');
- rT7extend((T7*)R,'\47');
- return R;
- }
- T0* rT70to_err2(T70 *C){
- T0* R=NULL;
- R=rT70to_err1(C);
- /*IF*/if (((int)(C)->_start_position)) {
- rT7append((T7*)R,(T0 *)ms462);
- rT7append((T7*)R,rT46to_err_msg((T46*)(C)->_start_position));
- rT7append((T7*)R,(T0 *)ms466);
- }
- /*FI*/return R;
- }
- T0* rT70to_err_msg(T70 *C){
- T0* R=NULL;
- R=rT70to_err2(C);
- rT7prepend((T7*)R,(T0 *)ms1432);
- return R;
- }
- T0 * rT70written_in(T70 *C){
- T0 * R=NULL;
- T0 * _sp=NULL;
- _sp=(C)->_start_position;
- /*IF*/if (((int)_sp)) {
- R=((T46*)_sp)->_base_class_name;
- }
- /*FI*/return R;
- }
- T0 * rT70run_feature(T70 *C,T0 * a1){
- T0 * R=NULL;
- R=rT260get_feature((T260*)XrT58run_class(a1),(T0 *)C);
- return R;
- }
- int rT70standard_is_equal(T70 *C,T0 * a1){
- int R=0;
- /*IF*//*AF*/if (((T0 *)a1)==((T0 *)C)) {
- R=1;
- }
- else {
- R=!memcmp(C,a1,s[C->id]);
- }
- /*FI*/return R;
- }
- void rT70copy(T70 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT70is_a(T70 *C,T0 * a1){
- int R=0;
- R=XrT58is_a(XrT58run_type((C)->_result_type),XrT58run_type(XrT68result_type(a1)));
- /*IF*/if (!(R)) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_position((C)->_start_position);
- rT70error(XrT68start_position(a1),(T0 *)ms1261);
- }
- /*FI*/return R;
- }
- void rT70make(T70 *C,T0* a1,T0 * a2){
- C->_to_string=a1;
- C->_start_position=a2;
- }
- T0 * rT64to_runnable(T64 *C,T0 * a1){
- T0 * R=NULL;
- T0 * _e=NULL;
- /*IF*/if (!((C)->_current_type)) {
- C->_current_type=a1;
- R=(T0 *)C;
- /*IF*/if (((int)(C)->_expression)) {
- _e=XrT68to_runnable((C)->_expression,a1);
- /*IF*/if (!(_e)) {
- rT64error(rT64start_position(C),(T0 *)ms477);
- }
- else {
- C->_expression=_e;
- /*IF*/if (!(XrT58is_boolean(XrT68result_type((C)->_expression)))) {
- /*UT*/(T45*)oRBC27eh;
- rT45add_type(XrT68result_type((C)->_expression),(T0 *)ms479);
- rT64error(rT64start_position(C),(T0 *)ms477);
- }
- /*FI*/}
- /*FI*/}
- /*FI*/}
- else {
- {T64 *n=((T64*)new(64));
- rT64make(n,(C)->_tag,(C)->_expression,(C)->_comment);
- R=(T0 *)n;}
- R=rT64to_runnable((T64*)R,a1);
- }
- /*FI*/return R;
- }
- void rT64error(/*C*/T0 * a1,T0* a2){
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(a1);
- rT45error((T45*)oRBC27eh,a2);
- }
- T0 * rT64start_position(T64 *C){
- T0 * R=NULL;
- /*IF*/if (((int)(C)->_tag)) {
- R=((T159*)(C)->_tag)->_start_position;
- }
- else if (((int)(C)->_expression)) {
- R=XrT68start_position((C)->_expression);
- }
- else {
- R=((T59*)(C)->_comment)->_start_position;
- }
- /*FI*/return R;
- }
- int rT64use_current(T64 *C){
- int R=0;
- /*IF*/if (((int)(C)->_expression)) {
- R=XrT68use_current((C)->_expression);
- }
- /*FI*/return R;
- }
- void rT64compile_to_c_old(T64 *C){
- /*IF*/if (((int)(C)->_expression)) {
- XrT68compile_to_c_old((C)->_expression);
- }
- /*FI*/}
- void rT64compile_to_c(T64 *C){
- /*IF*/if (((int)(C)->_expression)) {
- rT40check_assertion((T40*)oRBC27cpp,(C)->_expression);
- }
- /*FI*/}
- void rT64copy(T64 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- void rT64make(T64 *C,T0 * a1,T0 * a2,T0 * a3){
- C->_tag=a1;
- C->_expression=a2;
- C->_comment=a3;
- }
- T0 * rT140first(T140 *C){
- T0 * R=NULL;
- /*IF*/if (((int)(C)->_list)) {
- R=rT217first((T217*)(C)->_list);
- }
- /*FI*/return R;
- }
- void rT140fatal_error(/*C*/T0* a1){
- rT45fatal_error((T45*)oRBC27eh,a1);
- }
- int rT140count(T140 *C){
- int R=0;
- /*IF*/if (((int)(C)->_list)) {
- R=((T217*)(C)->_list)->_upper;
- }
- /*FI*/return R;
- }
- T0 * rT140to_runnable(T140 *C,T0 * a1){
- T0 * R=NULL;
- T0 * _i2=NULL;
- T0 * _i1=NULL;
- int _i=0;
- /*IF*/if (!((C)->_current_type)) {
- C->_current_type=a1;
- /*IF*/if (((int)(C)->_list)) {
- _i=1;
- while (!((_i)>(((T217*)(C)->_list)->_upper))) {
- _i1=rT217item((T217*)(C)->_list,_i);
- _i2=XrT176to_runnable(_i1,(T0 *)C);
- /*IF*/if ((/*(IRF4*/((T45*)oRBC27eh)->_nb_errors/*)*/)>(0)) {
- /*UT*/(T45*)oRBC27eh;
- rT45append((T0 *)ms515);
- /*UT*/(T45*)oRBC27eh;
- rT45append(XrT58written_mark((C)->_current_type));
- /*UT*/(T45*)oRBC27eh;
- rT45add_position(XrT176start_position(_i1));
- rT140fatal_error((T0 *)ms516);
- }
- else {
- rT217put((T217*)(C)->_list,_i2,_i);
- }
- /*FI*/_i=(_i)+(1);
- }
- }
- /*FI*/R=(T0 *)C;
- }
- else {
- {T140 *n=((T140*)new(140));
- rT140make(n,(C)->_header_comment,rT140clone(C,(C)->_list));
- R=(T0 *)n;}
- R=rT140to_runnable((T140*)R,a1);
- }
- /*FI*/return R;
- }
- int rT140use_current(T140 *C){
- int R=0;
- int _i=0;
- /*IF*/if (((int)(C)->_list)) {
- _i=1;
- while (!((R)||((_i)>(((T217*)(C)->_list)->_upper)))) {
- R=XrT176use_current(rT217item((T217*)(C)->_list,_i));
- _i=(_i)+(1);
- }
- }
- /*FI*/return R;
- }
- T0* rT140clone(T140 *C,T0* a1){
- T0* R=NULL;
- /*IF*/if (((int)a1)) {
- R=(T0 *)new(a1->id);
- AF_1
- XrT28copy(R,a1);
- AF_0
- }
- /*FI*/return R;
- }
- T0 * rT140run_class(T140 *C){
- T0 * R=NULL;
- R=XrT58run_class((C)->_current_type);
- return R;
- }
- void rT140compile_to_c(T140 *C){
- int _i=0;
- /*IF*/if (((int)(C)->_list)) {
- _i=1;
- while (!((_i)>(((T217*)(C)->_list)->_upper))) {
- XrT176compile_to_c(rT217item((T217*)(C)->_list,_i));
- _i=(_i)+(1);
- }
- }
- /*FI*/}
- void rT140copy(T140 *C,T0 * a1){
- /*IF*//*AF*//*AE*/
- memcpy(C,a1,s[C->id]);
- /*FI*/}
- int rT140is_pre_computable(T140 *C){
- int R=0;
- T0 * _a=NULL;
- T0 * _cc=NULL;
- T0 * _i=NULL;
- /*IF*/if (!((C)->_list)) {
- R=1;
- }
- else if ((((T217*)(C)->_list)->_upper)==(1)) {
- _i=rT217item((T217*)(C)->_list,1);
- _cc=_i;
- if ((int)_cc) switch (((T0 *)_cc)->id) {
- case 247: case 245: case 243: case 240:
- break;
- default:
- _cc = NULL;
- };/*IF*/if (((int)_cc)) {
- R=XrT242is_pre_computable(_cc);
- }
- else {
- _a=_i;
- if ((int)_a) switch (((T0 *)_a)->id) {
- case 248:
- break;
- default:
- _a = NULL;
- };/*IF*/if (((int)_a)) {
- R=rT248is_pre_computable((T248*)_a);
- }
- /*FI*/}
- /*FI*/}
- /*FI*/return R;
- }
- void rT140make(T140 *C,T0 * a1,T0* a2){
- C->_header_comment=a1;
- C->_list=a2;
- }
- void rT276clear_all(T276 *C){
- int _value=0;
- rT276set_all_with(C,_value);
- }
- void rT276set_all_with(T276 *C,int a1){
- int _i=0;
- _i=(C)->_upper;
- while (!((_i)<((C)->_lower))) {
- rT276put(C,a1,_i);
- _i=(_i)-(1);
- }
- }
- void rT276resize(T276 *C,int a1,int a2){
- int _up=0;
- int _i=0;
- T0* _other=NULL;
- {T276 *n=((T276*)new(276));
- rT276make(n,a1,a2);
- _other=(T0 *)n;}
- _i=rT2max((C)->_lower,((T276*)_other)->_lower);
- _up=rT2min((C)->_upper,((T276*)_other)->_upper);
- while (!((_i)>(_up))) {
- rT276put((T276*)_other,rT276item(C,_i),_i);
- _i=(_i)+(1);
- }
- /*IF*/{/*AT*/free(C->_storage);
- }
- /*FI*/memcpy(C,_other,sizeof(*C));free(_other);
- }
- void rT276force(T276 *C,int a1,int a2){
- /*IF*/if (((C)->_upper)<(a2)) {
- rT276resize(C,(C)->_lower,a2);
- }
- else if ((a2)<((C)->_lower)) {
- rT276resize(C,a2,(C)->_upper);
- }
- /*FI*/rT276put(C,a1,a2);
- }
- int rT276item(T276 *C,int a1){
- int R=0;
- R=(C->_storage)[a1-(C->_lower)];
- return R;
- }
- int rT276valid_index(T276 *C,int a1){
- int R=0;
- R=(((C)->_lower)<=(a1))&&((a1)<=((C)->_upper));
- return R;
- }
- void rT276put(T276 *C,int a1,int a2){
- (C->_storage)[a2-(C->_lower)]=a1;
- }
- void rT276copy(T276 *C,T0* a1){
- int _i=0;
- C->_upper=((C)->_lower)-(1);
- /*IF*/if (((C)->_capacity)==(0)) {
- rT276make(C,((T276*)a1)->_lower,((T276*)a1)->_upper);
- }
- else {
- rT276resize(C,((T276*)a1)->_lower,((T276*)a1)->_upper);
- }
- /*FI*/_i=(C)->_lower;
- while (!((_i)>((C)->_upper))) {
- rT276put(C,rT276item((T276*)a1,_i),_i);
- _i=(_i)+(1);
- }
- }
- void rT276set_slice_with(T276 *C,int a1,int a2,int a3){
- int _i=0;
- _i=a2;
- while (!((_i)>(a3))) {
- rT276put(C,a1,_i);
- _i=(_i)+(1);
- }
- }
- void rT276make(T276 *C,int a1,int a2){
- /*IF*/{/*AT*/free(C->_storage);
- }
- /*FI*/C->_lower=a1;
- C->_upper=a2;
- C->_capacity=(((C)->_upper)-((C)->_lower))+(1);
- C->_storage=NULL;
- /*IF*/if (((C)->_capacity)>(0)) {
- C->_capacity=((C)->_capacity)+(16);
- C->_storage=malloc((size_t)((C->_capacity)*sizeof(*(C->_storage))));
- rT276clear_all(C);
- }
- /*FI*/}
-